package com.jcfk.eam.domain.dto.main;


import java.util.List;
import com.jcfk.system.domain.dto.BaseDTO;
import org.hibernate.validator.constraints.Length;
import lombok.Data;
import java.util.Date;
/**
 * 发放记录
 *
 * @author yql
 * @email 522891237@gqq.com
 * @date 2024-07-29
 */
@Data
public class EamGrantRecordDTO extends BaseDTO {

    private static final long serialVersionUID = 1L;

    /**
     * 数据版本号
     */
    private Long version;

    /**
     * 单据号
     */
    @Length(max = 32, message = "单据号长度不能超过32")
    private String recordCode;

    /**
     * 原始凭证号
     */
    @Length(max = 32, message = "原始凭证号长度不能超过32")
    private String originalVoucherNo;

    /**
     * 资产大类
     */
    private Integer assetKind;

    /**
     * 发放原因
     */
    @Length(max = 255, message = "发放原因长度不能超过255")
    private String grantReason;

    /**
     * 发放日期
     */
    private Date grantDate;

    /**
     * 发放人主键
     */
    @Length(max = 32, message = "发放人主键长度不能超过32")
    private String grantPersonId;

    /**
     * 发放人
     */
    @Length(max = 50, message = "发放人长度不能超过50")
    private String grantPersonName;

    /**
     * 发放类型
     */
    private Integer grantPersonType;

    /**
     * 使用部门主键
     */
    @Length(max = 32, message = "使用部门主键长度不能超过32")
    private String receiveDepartmentId;

    /**
     * 使用部门
     */
    @Length(max = 50, message = "使用部门长度不能超过50")
    private String receiveDepartmentName;

    /**
     * 领用人主键
     */
    @Length(max = 32, message = "领用人主键长度不能超过32")
    private String receivePersonId;

    /**
     * 领用人
     */
    @Length(max = 50, message = "领用人长度不能超过50")
    private String receivePersonName;

    /**
     * 是否审核
     */
    private Integer isAudit;

    /**
     * 备注
     */
    @Length(max = 255, message = "备注长度不能超过255")
    private String remarks;

    /**
     * 是否删除
     */
    private Integer deleted;

    /**
     * 组织机构主键
     */
    @Length(max = 32, message = "组织机构主键长度不能超过32")
    private String organizationId;

    /**
     * 创建人
     */
    @Length(max = 50, message = "创建人长度不能超过50")
    private String createdUserName;

    /**
     * 更新人
     */
    @Length(max = 50, message = "更新人长度不能超过50")
    private String lastUpdatedUserName;


    /**
     * 批量添加子表
     */
    private List<EamGrantRecordDetailDTO> details;

    /**
     * 批量删除id
     */
    private List<String> ids;

}
